package com.cloudkinto.service.product.vo;

import com.cloudkinto.common.utils.StringsUtil;
import com.cloudkinto.service.operate.vo.OperateRes;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @author zhangyy
 * @date 2020/6/5 13:15
 * @description:
 */
@Data
public class ProductDetailRes {
    private Long id;

    /**
     * 顾客SKU
     */
    private String commoditySku;

    /**
     * 仓库SKU
     */
    private String storageSku;

    /**
     * 产品名称（日）
     */
    private String commodityName;

    /**
     * 产品名称（中）
     */
    private String productName;

    /**
     * 产品分类
     */
    private String productTypeName;

    /**
     * 产品分类
     */
    private Long productType;

    /**
     * 产品长度
     */
    private Float length;

    /**
     * 产品宽度
     */
    private Float width;

    /**
     * 产品高度
     */
    private Float height;

    /**
     * 产品重量
     */
    private Float weight;

    /**
     * 成本价格（人民币）
     */
    private Float reportPrice;

    /**
     * 售价（日元）
     */
    private Integer salePrice;

    /**
     * 图片地址
     */
    private String productPictureFileUrl;
    private Long fileId;
    private String fileName;

    private List<ProductSkuMapDetail> productSkuMapDetailList;

    private List<OperateRes> operateResList;

    private Long consumables;
    private String consumablesName;
    private Long casePack;

    @ApiModelProperty("类别 普通产品 common  组合产品 combination")
    private String typeOfProduct;

    @ApiModelProperty("fn_sku")
    private String fnSku;

    @ApiModelProperty("是否投保")
    private Boolean isInsure;

    @ApiModelProperty("投保金额")
    private Double insureAmount;

    private String upc;
    @ApiModelProperty("规格")
    private String color;

    @ApiModelProperty("是否先进先出 0 否 1是")
    private Integer outType;

    @ApiModelProperty("大小件 0 小件 1 大件")
    private Integer sizeType;

    @ApiModelProperty("子产品")
    List<ProductPageRes> childProductList;

    public String getProductTypeName() {
        return StringsUtil.createI18Message(productTypeName);
    }
}
